﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Ciripescu_WebRole.BL;
using Ciripescu_WebRole.Entities;

namespace Ciripescu_WebRole
{
    public partial class optout : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            string obfs = null;
            string rowKey = null;
            if (Request.QueryString["invitationId"] != null && Request.QueryString["key"] != null)
            {
                obfs = Request.QueryString["invitationId"];
                rowKey = Request.QueryString["key"];
            }
            else
            {
                errors.InnerHtml = "Dati click pe linkul primit pe mail pentru a bloca invitatiile!";
                return;
            }
            string email = Utils.DeObfuscateEmail(obfs);
            InviteManager im = new InviteManager();
            Invite inv = im.GetItem(email);
            if (inv != null) // adaca adresa cu care s-a inregistrat a mai fost vazuta in sistem
            {
                if (inv.noMoreEmails)
                {
                    errors.InnerHtml = "La adresa " + Server.HtmlEncode(email) +" deja nu se mai trimit invitatii pentru ca ati folosit deja functia de optout!" ;
                    return;
                }
                if (inv.RowKey != rowKey)
                {
                    // incercare de a scoate pe altcineva????
                    errors.InnerHtml = "Linkul folosit nu este valabil!";
                    return;
                }
                inv.noMoreEmails = true;
                im.Save(inv);
                errors.InnerHtml = "De acuma nu se vor mai putea trimite invitatii la adresa " + Server.HtmlEncode(email);
            }
            else
            {
                errors.InnerHtml = "Eroare: Nu s-a trimis nici o invitatie pe adresa data!";
                return;
            }
        }
    }
}
